export interface IStatus {
  id: any
  value: string
  content?: string
  intro?: string
  name?: string
  color?: string
}

export const applyTypes: IStatus[] = [
  {
    id: 0,
    value: '新增',
  },
  {
    id: 1,
    value: '更新',
  },
]

export const orgLicenseTypes: IStatus[] = [
  {
    id: 1,
    value: '组织机构代码',
  },
  {
    id: 2,
    value: '统一社会信用代码证',
  },
  {
    id: 3,
    value: '工商注册号',
  },
]

export const orgTypes: IStatus[] = [
  {
    id: 10,
    value: '省',
  },
  {
    id: 20,
    value: '市',
  },
  {
    id: 30,
    value: '县',
  },
  {
    id: 40,
    value: '乡',
  },
  {
    id: 50,
    value: '单位',
  },
  {
    id: 60,
    value: '部门',
  },
  {
    id: 70,
    value: '虚设',
  },
]

export const adminTypes: IStatus[] = [
  { id: 1, value: '省级' },
  { id: 2, value: '市级' },
  { id: 3, value: '县级' },
  { id: 4, value: '乡镇街道' },
  { id: 5, value: '村/社区' },
]

export const userLicenseTypes: IStatus[] = [
  {
    id: 1,
    value: '身份证',
  },
]
export const fileTypes: IStatus[] = [
  {
    id: 1,
    value: '安装包',
    name: '安装包',
    color: '#409EFF',
  },
  {
    id: 2,
    value: '操作手册',
    name: '操作手册',
    color: '#67C33A',
  },
  {
    id: 3,
    value: '接口文档',
    name: '接口文档',
    color: '#333333',
  },
  {
    id: 0,
    value: '-',
    name: '未分类',
    color: '#BABABA',
  },
]

export const useTypes: IStatus[] = [
  {
    id: 1,
    value: 'Ukey签章',
    intro:
      '是具有实体UKEY的电子印章，一般用于电子公文、联合审批等应用系统，申请完成后UKey将会以快递形式寄送至指定收货地址。',
  },
  {
    id: 2,
    value: '云签章',
    intro:
      '是无实体Ukey的电子印章，数字证书托管于浙江省政府电子印章系统，一般用于电子证照系统、监督管理平台等系统后台调用签章的场景，申请完成后即刻生效可用。',
  },
]

export const sealUseTimes: IStatus[] = [
  {
    id: 1,
    value: '一年',
  },
  {
    id: 2,
    value: '两年',
  },
  {
    id: 3,
    value: '三年',
  },
  {
    id: 4,
    value: '四年',
  },
  {
    id: 5,
    value: '五年',
  },
]

export const payTypes: IStatus[] = [
  {
    id: 1,
    value: '自付费',
    intro: '个人线上付费并在线下载发票',
  },
  {
    id: 2,
    value: '统一付费',
    intro: '由统一付费方垫付，请在提交订单前向统一付费方确认',
  },
]

export const expressPayTypes: IStatus[] = [
  {
    id: 1,
    value: '线上支付',
    intro: '快递费用将一并包含在发票中',
  },
  {
    id: 2,
    value: '快递到付',
    intro: '快递员现场收取快递费并提供快递费发票',
  },
]

export const sealUseTimeList: IStatus[] = [
  {
    id: 1,
    value: '一年',
    content: '￥280.00',
  },
  {
    id: 2,
    value: '两年',
    content: '￥560.00',
  },
  {
    id: 3,
    value: '三年',
    content: '￥840.00',
  },
  {
    id: 4,
    value: '四年',
    content: '￥1120.00',
  },
  {
    id: 5,
    value: '五年',
    content: '￥1400.00',
  },
]

export const sealUseTypeList: IStatus[] = [
  {
    id: 1,
    value: 'Ukey签章',
  },
  {
    id: 2,
    value: '云签章',
  },
]

export const opts: IStatus[] = [
  { id: 0, value: '撤回申请' },
  { id: 1, value: '线上支付' },
  { id: 2, value: '发起申请' },
  { id: 3, value: '材料审核' },
  { id: 4, value: '印章制证与备案' },
  { id: 5, value: '发货与收货' },
  { id: 6, value: '完成' },
]

export const getAmount = (id: number) => {
  return (
    sealUseTimeList.find((pay: IStatus) => pay.id === id) || { content: '--' }
  ).content
}

export const sealTypes: IStatus[] = [
  { id: 1, value: '电子法定名称章', intro: '指与单位法定名称同名的印章。' },
  {
    id: 2,
    value: '电子财务专用章',
    intro:
      '指单位办理单位会计核算和银行结算业务时使用的专用章，印章印模里含有单位名称，中间刻有财务专用章字样。',
  },
  {
    id: 3,
    value: '电子发票专用章',
    intro:
      '指单位按税务机关规定刻制的印章，印章印模里含有单位名称、发票专用章字样。',
  },
  {
    id: 4,
    value: '电子合同专用章',
    intro:
      '指单位专门用于签订经济合同的印章，印章印模里含有单位名称、合同专用章字样。',
  },
  {
    id: 6,
    value: '业务专用章',
    intro:
      '指单位用于对外洽谈、开展、运作、结算具体业务时使用的业务专用印章（此处指除财务专用章、发票专用章、合同专用章之外的其他业务专用印章）。',
  },
  {
    id: 5,
    value: '电子名章',
    intro:
      '指单位用于审批（请假、报销等场合）的个人印章。一般用于公用，效力等价于个人签名。',
  },
]

export function formatStatus(status: IStatus[], key: any) {
  return (
    ((status.filter((item: IStatus) => item.id === key) || [])[0] || {})
      .value || ''
  )
}

export function formatObject(params: any[], key: any) {
  const res = (params.filter((item: any) => item.id === key) || [])[0] || {}

  return res
}

export const optionList = [
  {
    id: 2,
    value: '发起申请',
    title: '',
  },
  {
    id: 3,
    value: '审核通过',
    title: '意见：',
  },
  {
    id: 4,
    value: '制章通过',
    title: '意见：',
  },
  {
    id: 5,
    value: '制证完成',
    title: '意见：',
  },
  {
    id: 7,
    value: '备案完成',
    title: '意见：',
  },
  {
    id: 8,
    value: '印章发布',
  },
  {
    id: 91,
    value: '审核退回',
    title: '意见：',
    red: true,
  },
  {
    id: 92,
    value: '制章退回',
    title: '意见：',
    red: true,
  },
  {
    id: 97,
    value: '统付方退回',
    title: '意见：',
    red: true,
  },
]

export const getTimeline = (sealApplyStatus: number, defaultData: any) => {
  if (sealApplyStatus !== 1) {
    return defaultData.sealApplyOpsBOs.map((option: any, i: number) =>
      Object.assign({}, formatObject(optionList, option.operatorType), {
        index: i,
        time: option.time,
        reason: option.operatorType !== 2 ? option.content : '',
        value: option.operatorTypeName,
      })
    )
  }

  return []
}

export const orderStatusList: any = {
  2: '等待发货',
  3: '等待收货',
  4: '已收货',
}
export const statusColor: any = {
  2: '#1890FF',
  3: '#FFAA00',
  4: '#52C41A',
}
